package Lee_code;

import com.sun.prism.impl.shape.BasicRoundRectRep;

/**
 * @author blh
 * @date 2024年11月08日 9:12
 * 统计 1 显著的字符串的数量
 */
public class Lee_3234_118 {
    public int numberOfSubstrings(String s) {
        int len = s.length();
        int res = 0;
        // 感觉是直接枚举
        for (int i = 0; i < len; i++) {
            int zero = 0;
            for (int j = i; j < len; j++) {
                if (s.charAt(j) == '0') {
                    zero++;
                }
                // 如果0的个数大于最大长度
                if (zero * zero > (len - i - zero)) {
                    break;
                }
                if (zero * zero <= (j - i + 1 - zero)) {
                    res++;
                    // 此时直接去找下一个0
                    while (j + 1 < len && s.charAt(j + 1) == '1') {
                        res++;
                        j++;
                    }
                }
            }
        }
        return res;
    }

    public static void main(String[] args) {
        Lee_3234_118 method = new Lee_3234_118();
        System.out.print(method.numberOfSubstrings("101101"));
    }
}
